Log In  
BBS > Lexaloffle Community Superblog
This is a combined feed of all Lexaloffle user blogs. For Lexaloffle-related news, see @zep's blog.

All | Following | PICO-8 | Voxatron | General | Off-site
[ :: Read More :: ]

My game for Ludum Dare 47, a little puzzle game with a tline rotation effect.
I made the effect without any idea what I was doing with it, then scrambled to finish the puzzle part for the jam deadline...

Cart #pcc_ld47_chronometry-0 | 2020-10-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7



P#82727 2020-10-09 05:24
[ :: Read More :: ]

Cart #rwunsire-0 | 2020-10-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1


Cart #wofbifete-0 | 2020-10-09 | Code ▽ | Embed ▽ | No License
1


Cart #yomuzusoti-0 | 2020-10-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

My 3 cool test things!

P#82726 2020-10-09 03:33 ( Edited 2020-10-09 03:46)
[ :: Read More :: ]

Cart #stridee-1 | 2020-10-09 | Code ▽ | Embed ▽ | No License

P#82723 2020-10-09 00:44 ( Edited 2020-10-09 00:46)
[ :: Read More :: ]

Cart #crowded_dungeon_crawler-3 | 2021-11-11 | Code ▽ | Embed ▽ | No License
159

Controller/Keyboard

Mouse and Keyboard

Gameplay

Crowded Dungeon Crawler is a mix of puzzle and dungeon crawler. Your goal is to defeat enough enemies to open the door to the next level.

  • The TIME bar depletes as you play. Once it's empty it's game over. Attacking enemies and buying items will stop time for a few seconds.
  • Melee items require HP to be used. When attacking multiple enemies, only the strongest one in the group will damage you.
  • Magic items require MANA. Each item has a specific mana cost. If you don't have enough mana to cast an ability, you can hold the attack button to convert TIME into MANA.
  • You can have up to 7 items in your INVENTORY. If you pick up more than that, you will drop the currently equipped item on the ground.
  • Defeat enough enemies to open the EXIT. If you clear ALL enemies you will receive an additional reward.

Pause Menu

The pause menu has some special options:

  • If you don't have any plays left, select RESTART LEVEL to try again.
  • Select REPLAY PUZZLES to play previous puzzles in which you didn't collect the golden gem.
  • CLEAR PROGRESS will restart the game from the beginning but keep your scores.
  • CLEAR SCORE will erase your scores but keep your progress on the puzzles.
  • You can't interact with the pause menu with the mouse, only with the keyboard or controller.

Puzzle Levels

Each world consists of 7 puzzles and a sequence of random levels at the end. In puzzle levels, you have to defeat enough enemies before running out of resources. If you don't have any more health, mana, or items to use, pause the game and select RESTART LEVEL.

Puzzle levels have some specific rules:

  • In puzzle mode, your TIME bar doesn't deplete unless you use a magic item to convert time into mana.
  • Clearing all enemies will give you a GOLDEN GEM. Golden gems are used to unlock playable classes.

Adventure Mode

In world 6 there are no puzzle levels. Instead, you can play with different classes in an endless sequence of levels for high scores. It only ends when you run out of time.

  • Clearing all enemies gives you a RED GEM. Red gems can be used at special shops for unique items. If you keep them, they count as much as 100 coins!
  • Each class has its own score counter. Try to see how far you can go with each one!
  • Every 3 levels the dungeon type changes. You can see what's the next type on the STAIRS!
  • Destroy the GOLDEN IDOL to double your score! Defeating the golden idol ends your run. Try to defeat it only when you think you can't go any further!
  • After each level, some of your resources (HP, mana and items) will be refilled according to your class.

Items and Enemies

You should be able to figure out the item and enemy mechanics on your own. In case you get stuck here is some additional information. SPOILERS!

Enemy Table

Item Table

Credits

BoneVolt - Design, Programming, Graphics and SFX
Jamaass - Music and Quality Assurance
Special thanks to our Discord server for additional testing, feedback and support!

P#82720 2020-10-08 23:16 ( Edited 2021-11-11 21:06)
[ :: Read More :: ]

Cart #gemdrop-2 | 2020-10-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
5

Gem Drop (beta)

Please let me know what you think! Feedback welcome.

Thanks!

P#82719 2020-10-08 19:47 ( Edited 2020-10-09 09:01)
[ :: Read More :: ]

Controls:

-Arrow keys to move
-X to open key UI

Cart #theblues-7 | 2020-10-09 | Code ▽ | Embed ▽ | No License
1

P#82714 2020-10-08 18:41 ( Edited 2020-10-09 15:39)
[ :: Read More :: ]

Hallo Pico People,

Loving it here. First post!

So i'm working on a 2D physics based collision engine.

...Imagine a whole bunch of polygons flying around, wrapped in AABBs (axis aligned bounding boxes)...

And I was wondering if this was a legit/efficient way to check if Two Edges/Line-Segments Intersect.

1. Treat them as AABBs and check if those overlap, is so keep the "resulting mini rectangle".
-->otherwise abort

2. Treat them as Linear-Functions (infinite strait lines) and check if they are parallel, if NOT determine the resulting "point of intersection"
--otherwise abort

3. check if the "point of intersection" is inside the "resulting mini rectangle".
--return that point, otherwise abort

--do segments intersect? if so where?

function segments(a,b)

 local r=overlap(to_rect(a),
                 to_rect(b))

 if(not r)return false                

 local pt=intersection(a,b)

 if(not pt)return false   

 if(in_rect(pt,r))return pt

 return false  

end

Lets assume the sub-functions (which I haven't included) are squeaky clean, its more about the idea...
Have to say it works a charm at the moment, even on weird concave polygons. But I could be going mad.

Any tips? Would it be easier on the CPU to use dot/cross product stuff? Am I missing something?

Luv, Phume

ps. here's a drawing

P#82711 2020-10-08 18:34 ( Edited 2020-10-08 19:58)
[ :: Read More :: ]

It's that time of year -- Halloween!

And that means... it's time for a spooky jam, pico-8 style!
No color limitations this time -- just monsters!

Monsters Are Cute Jam

What: a pico-8 Halloween jam for 2020

When: NOW through October 29th

How: I uh.. just make a game or pico8 toy?
Ohhh and add monster(s)! Cute or.. not so cute -- just gotta have a monster somewhere, somehow, some...when!

Please use the #macojam tag on twitter to share progress gifs, ideas, requests for collaboration, etc
Or you can post in this thread here on the lexaloffle forums!

P#82713 2020-10-08 18:20
[ :: Read More :: ]

by Mot
Cart #mot_pool-23 | 2020-10-08 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
183

This is Mot's 8-Ball Pool, a little pool simulation inspired by 3D pool on the C64 and Amiga.
Shoot a round of pool against a friend, or one of the 7 different AI characters.

UI

The UI at the bottom of the screen shows how each player is progressing.
The player's name flashes when it is their turn.
The color they must sink is displayed next to their name, and the balls already sunk are displayed above.
A white ball indicates they have a free ball.

When player fouls, the reason for the foul is displayed in a scrolling message along the bottom of the screen.

Rules

I'll assume you know the basic rules of 8-ball pool, so I'll just describe how the rules have been implemented.
The game uses a simplified set of rules:

  • The game ends when the black ball is sunk.
  • If you sink it (legally) after sinking all your colored balls, you win. Otherwise you forfeit and your opponent wins.
  • The first ball sunk becomes that player's color.
  • A legal shot involves hitting a ball of your color first, and not sinking the wrong color, white ball or black ball (except when you're supposed to).
  • A free ball is awarded to the other player after a "foul". A free ball means you get a free second shot even if you don't sink a ball - as long as your shot was legal.

Hope you enjoy it.
If you're curious, you can see the development progress in this Twitter thread.

P#82696 2020-10-08 08:05
[ :: Read More :: ]

How would I go about comparing numbers greater than 32,767?

I'm using @Felice's code from https://www.lexaloffle.com/bbs/?pid=22677:

function get_score_text(val)
    local s = ""
    local v = abs(val)
    while (v!=0) do
        s = shl(v % 0x0.000a, 16)..s
        v /= 10
    end
    if (val<0)  s = "-"..s

    if(s=="") then
        s="0"
    end

    return s 
end 

I'm saving the three highest scores to the cart data. Unfortunately, I'm struggling to solve how to determine if the user's current high score (stored as a string) is greater than one of the other three. I'm looking for a function along these lines:

function check_new_high_score()
    --high_scores = table of tables { 1 => (player_name), 2 => (player score) }
    for i=1,#high_scores do
        local raw_high_score = get_score_text(config.total_score)
        local raw_saved_score = high_scores[i][2]

        if(raw_high_score>raw_saved_score) then
           return i
        end
    end

    return false
end

Unfortunately, yea, this just fails because I'm comparing strings to each other with a comparison operator. I'd love to know how to resolve this, I've been struggling with it for some time. Things end up in weird places:

P#82692 2020-10-07 22:48 ( Edited 2020-10-07 22:51)
[ :: Read More :: ]

Cart #zenehereyo-3 | 2021-02-15 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

Rated as the worst Defender's clone on the Atari VCS 2600 console. Here's my remake of this one. Enjoy!

P#82691 2020-10-07 21:49 ( Edited 2021-02-15 16:54)
[ :: Read More :: ]

3AM SIMULATOR

Cart #threeamsim-0 | 2020-10-06 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

a nice little simulator. arrow keys to control.
grab the glass, the water and then go to the toilet to win.

P#82658 2020-10-06 23:05 ( Edited 2020-10-06 23:06)
[ :: Read More :: ]

I am trying to edit the config.txt file from /Users/myuser/Library/Application Support/pico-8, but it is overwritten every single time I exit out of pico-8. Does anybody know why this is?

I'm using PICO-8 v0.2.1b on OSX.

I have validated (multiple times) that pico-8 is NOT running when I edit the file. When I then start the application, the settings are still present in the config.txt (although my changes seem to be ignored) and then the file is overwritten with default values when I exit.

Thanks for any suggestions!

P#82627 2020-10-06 03:29 ( Edited 2020-10-06 03:45)
[ :: Read More :: ]

Use arrow keys to move

Cart #platformer1-3 | 2020-10-06 | Code ▽ | Embed ▽ | No License
2

P#82624 2020-10-06 01:50 ( Edited 2020-10-06 18:31)
[ :: Read More :: ]

Cart #neonspheres-4 | 2020-10-06 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

Help the factory sorting stuff.

Controls, left right, up X and C to jump

To do list :

  • destruction animation
  • scoring system
P#82620 2020-10-06 00:40 ( Edited 2020-10-06 14:34)
[ :: Read More :: ]

Cart #tbufaguwu-1 | 2020-10-06 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

P#82619 2020-10-06 00:10
[ :: Read More :: ]

Cart #chicxulub-0 | 2020-10-05 | Code ▽ | Embed ▽ | No License
3

P#82616 2020-10-05 22:38
[ :: Read More :: ]

A short game about being not enough.

Warning:

includes flashing lights and screen shaking

Cart #not_enough_01-0 | 2020-10-05 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
17

TL;DR:

PICO-8 is amazing!

Ludum Dare Link

-

What a rush! I needed all those 72 hours to complete this. At about 40 minutes from the end, I had the game completed and for god’s sake, it worked and was ready.

It has been a lot since my last solo Ludum Dare (like 4 years probably) but I'm so happy that this is the game for my comeback. This time the theme was "Stuck in a loop", and the Ludum Dare 47 started a bit earlier, at midnight for me. I thought about this concept just a few hours after I went to bed, and I've fallen in love with it. I believe this truly resonates with how I feel and have felt and this is why I think I've managed to make it conveys those feelings to the player.​

-

I decided one month ago that I would have used PICO-8 for this jam, and I'm glad that I've chosen it because I had so much fun with it! The editor is so lovely and very well packed.
I did all my work with it (except using notepad to reorder PICO-8 code tab) and I think that it helped to keep me focused, not having to switch to different programs and stuff.

-

PICO-8 also has a few limits to make the game feel like a true retro one, like palette color, sprite sheet, sound, and most of all (for me at least) code.
The last day, at about 12 hours from the end and the game ALMOST completed, I reached PICO-8 tokens limit (a token is more or less a code word), so I couldn't write any more code! I totally panicked and had to refactor all my beloved copy-paste code.

Three hours later, I had the same game but with more or less another 1000 free tokens, the rest of the day was pure anxiety since I had to be sure I didn't reach the limit again, which I reached a few times nonetheless, needing to strip away debug code and some other refactor.

That said, PICO-8 limits are what makes it so satisfying and charming. They helped me focus on the important things and without them I wouldn't have made this game as it is.

-

This time, thank again to PICO-8, I managed to do all by myself: code, art, sfx, music, levels and stuff (ok PICO-8 Celeste I’ve copied your shake camera code but never mind).
I am very proud of this but, most of all, this helped me to create the vision I had in mind in the best way I could within the 72 hours.

-

This Ludum Dare has been an incredible and important experience to myself, one that I hope will help me going on towards my path.

If you managed to read this far, I hope you will also manage to play my game and also leave some feedback!
I'll love to hear what you think about it <3

-

Thank you for your time...but

NOT ENOUGH

P#82613 2020-10-05 21:21 ( Edited 2020-10-25 14:56)
[ :: Read More :: ]

Cart #besasoheme-0 | 2020-10-05 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
9

You are a satellite tasked with scanning a foreign planet. Travel through the data ring hotspots while avoiding the planet’s meteor showers, asteroid belts, and electric discharges.

Controls: Hold Z to fly in the inner ring and X to fly on the outer one. You orbit faster when you are closer to the planet and slower when you are further away. Use that to your advantage!

Made for Ludum Dare 47: Stuck in a loop
https://ldjam.com/events/ludum-dare/47/orbitrary

P#82612 2020-10-05 20:51
[ :: Read More :: ]

Cart #superjumpguy-5 | 2020-10-26 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

Super Jump Guy is the hottest new platformer! With cutting-edge 8-bit graphics and challenging gameplay, you'll want to play it again... and again... and again...

"Wait a second... haven't I been here before...?"

Created in 72 hours for Ludum Dare 47.

CHANGELOG:

  • 2020/10/26: Further tweaks to the graphics and music
  • 2020/10/12: Minor graphics improvements, a couple of new SFX, and some back-end optimisations.

Previous versions:

Cart #superjumpguy-1 | 2020-10-12 | Code ▽ | Embed ▽ | No License
7


Cart #superjumpguy-0 | 2020-10-05 | Code ▽ | Embed ▽ | No License
7

P#82611 2020-10-05 20:11 ( Edited 2020-10-26 18:57)
View Older Posts